DIAG_LINE_ONLY_SPACE    = '只有空格的空行。'
DIAG_LINE_POST_SPACE    = '后置空格。'
DIAG_UNUSED_LOCAL       = '未使用的局部变量 `{}`。'
DIAG_UNDEF_GLOBAL       = '未定义的全局变量 `{}`。'
DIAG_UNDEF_FIELD        = '未定义的属性/字段 `{}`。'
DIAG_UNDEF_ENV_CHILD    = '未定义的变量 `{}`（重载了 `_ENV` ）。'
DIAG_UNDEF_FENV_CHILD   = '未定义的变量 `{}`（处于模块中）。'
DIAG_GLOBAL_IN_NIL_ENV  = '不能使用全局变量（`_ENV`被置为了`nil`）。'
DIAG_GLOBAL_IN_NIL_FENV = '不能使用全局变量（模块被置为了`nil`）。'
DIAG_UNUSED_LABEL       = '未使用的标签 `{}`。'
DIAG_UNUSED_FUNCTION    = '未使用的函数。'
DIAG_UNUSED_VARARG      = '未使用的不定参数。'
DIAG_REDEFINED_LOCAL    = '重定义局部变量 `{}`。'
DIAG_DUPLICATE_INDEX    = '重复的索引 `{}`。'
DIAG_DUPLICATE_METHOD   = '重复的方法 `{}`。'
DIAG_PREVIOUS_CALL      = '解析为了上一行的函数调用。你可能需要在前面加一个 `;`。'
DIAG_PREFIELD_CALL      = '解析为了 `{} {}`。你可能需要在中间加一个`,`或`;`。'
DIAG_OVER_MAX_ARGS      = '函数只接收 {:d} 个参数，但你传了 {:d} 个。'
DIAG_OVER_MAX_VALUES    = '只有 {} 个变量，但你设置了 {} 个值。'
DIAG_AMBIGUITY_1        = '会优先运算 `{}`，你可能需要加个括号。'
DIAG_LOWERCASE_GLOBAL   = '首字母小写的全局变量'
DIAG_EMPTY_BLOCK        = '空代码块'
DIAG_DIAGNOSTICS        = 'Lua 诊断'
DIAG_SYNTAX_CHECK       = 'Lua 语法检查'
DIAG_NEED_VERSION       = '在 {} 中是合法的，当前为 {}'
DIAG_DEFINED_VERSION    = '在 {} 中有定义，当前为 {}'
DIAG_DEFINED_CUSTOM     = '在 {} 中有定义'
DIAG_DUPLICATE_CLASS    = '重复定义的 Class 。'
DIAG_UNDEFINED_CLASS    = '未定义的 Class 。'
DIAG_CYCLIC_EXTENDS     = '循环继承。'
DIAG_INEXISTENT_PARAM   = '不存在的参数。'
DIAG_DUPLICATE_PARAM    = '重复的参数。'
DIAG_NEED_CLASS         = '需要先定义 Class 。'
DIAG_DUPLICATE_FIELD    = '重复定义的 field 。'
DIAG_SET_CONST          = '不能对常量赋值。'
DIAG_SET_FOR_STATE      = '修改了循环变量。'
DIAG_CODE_AFTER_BREAK   = '无法执行到 `break` 后的代码。'
DIAG_UNBALANCED_ASSIGNMENTS = '由于值的数量不够而被赋值为了 `nil` 。在Lua中, `x, y = 1` 等价于 `x, y = 1, nil` 。'
DIAG_REQUIRE_LIKE       = '你可以在设置中将 `{}` 视为 `require`。'

DIAG_CIRCLE_DOC_CLASS                 = '循环继承的类。'
DIAG_DOC_FIELD_NO_CLASS               = '字段必须定义在类之后。'
DIAG_DUPLICATE_DOC_CLASS              = '重复定义的类。'
DIAG_DUPLICATE_DOC_FIELD              = '重复定义的字段。'
DIAG_DUPLICATE_DOC_PARAM              = '重复指向的参数。'
DIAG_UNDEFINED_DOC_CLASS              = '未定义的类。'
DIAG_UNDEFINED_DOC_NAME               = '未定义的类型或别名。'
DIAG_UNDEFINED_DOC_PARAM              = '指向了未定义的参数。'

MWS_NOT_SUPPORT         = '{} 目前还不支持多工作目录，我可能需要重启才能支持新的工作目录...'
MWS_RESTART             = '重启'
MWS_NOT_COMPLETE        = '工作目录还没有准备好，你可以稍后再试一下...'
MWS_COMPLETE            = '工作目录准备好了，你可以再试一下了...'
MWS_MAX_PRELOAD         = '预加载文件数已达上限（{}），你需要手动打开需要加载的文件。'
MWS_UCONFIG_FAILED      = '用户配置保存失败。'
MWS_UCONFIG_UPDATED     = '用户配置已更新。'
MWS_WCONFIG_UPDATED     = '工作区配置已更新。'

WORKSPACE_SKIP_LARGE_FILE = '已跳过过大的文件：{}。当前设置的大小限制为：{} KB，该文件大小为：{} KB'

PARSER_CRASH            = '语法解析崩溃了！遗言：{}'
PARSER_UNKNOWN          = '未知语法错误...'
PARSER_MISS_NAME        = '缺少名称。'
PARSER_UNKNOWN_SYMBOL   = '未知符号`{symbol}`。'
PARSER_MISS_SYMBOL      = '缺少符号`{symbol}`。'
PARSER_MISS_ESC_X       = '必须是2个16进制字符。'
PARSER_UTF8_SMALL       = '至少有1个字符。'
PARSER_UTF8_MAX         = '必须在 {min} 与 {max} 之间。'
PARSER_ERR_ESC          = '错误的转义符。'
PARSER_MUST_X16         = '必须是16进制字符。'
PARSER_MISS_EXPONENT    = '缺少指数部分。'
PARSER_MISS_EXP         = '缺少表达式。'
PARSER_MISS_FIELD       = '缺少域名。'
PARSER_MISS_METHOD      = '缺少方法名。'
PARSER_ARGS_AFTER_DOTS  = '`...`必须是最后一个参数。'
PARSER_KEYWORD          = '关键字无法作为名称。'
PARSER_EXP_IN_ACTION    = '表达式不能独立存在。'
PARSER_BREAK_OUTSIDE    = '`break`必须在循环内部。'
PARSER_MALFORMED_NUMBER = '无法构成有效数字。'
PARSER_ACTION_AFTER_RETURN = '`return`之后不能再执行代码。'
PARSER_ACTION_AFTER_BREAK = '`break`之后不能再执行代码。'
PARSER_NO_VISIBLE_LABEL = '标签`{label}`不可见。'
PARSER_REDEFINE_LABEL   = '标签`{label}`重复定义。'
PARSER_UNSUPPORT_SYMBOL = '{version} 不支持该符号。'
PARSER_UNEXPECT_DOTS    = '`...`只能在不定参函数中使用。'
PARSER_UNKNOWN_TAG      = '不支持的属性。'
PARSER_MULTI_TAG        = '只能设置一个属性。'
PARSER_UNEXPECT_LFUNC_NAME = '局部函数只能使用标识符作为名称。'
PARSER_ERR_LCOMMENT_END = '应使用`{symbol}`来关闭多行注释。'
PARSER_ERR_C_LONG_COMMENT = 'Lua应使用`--[[ ]]`来进行多行注释。'
PARSER_ERR_LSTRING_END  = '应使用`{symbol}`来关闭长字符串。'
PARSER_ERR_ASSIGN_AS_EQ = '应使用`=`来进行赋值操作。'
PARSER_ERR_EQ_AS_ASSIGN = '应使用`==`来进行等于判断。'
PARSER_ERR_UEQ          = '应使用`~=`来进行不等于判断。'
PARSER_ERR_THEN_AS_DO   = '应使用`then`。'
PARSER_ERR_DO_AS_THEN   = '应使用`do`。'
PARSER_MISS_END         = '缺少对应的`end`。'
PARSER_ERR_COMMENT_PREFIX = 'Lua应使用`--`来进行注释。'
PARSER_MISS_SEP_IN_TABLE = '需要用`,`或`;`进行分割。'
PARSER_SET_CONST         = '不能对常量赋值。'
PARSER_UNICODE_NAME      = '包含了 Unicode 字符。'

PARSER_LUADOC_MISS_CLASS_NAME           = '缺少类名称。'
PARSER_LUADOC_MISS_EXTENDS_SYMBOL       = '缺少符号 `:`。'
PARSER_LUADOC_MISS_CLASS_EXTENDS_NAME   = '缺少要继承的类名称。'
PARSER_LUADOC_MISS_SYMBOL               = '缺少符号 `{symbol}`。'
PARSER_LUADOC_MISS_ARG_NAME             = '缺少参数名称。'
PARSER_LUADOC_MISS_TYPE_NAME            = '缺少类型名。'
PARSER_LUADOC_MISS_ALIAS_NAME           = '缺少别名。'
PARSER_LUADOC_MISS_ALIAS_EXTENDS        = '缺少别名定义。'
PARSER_LUADOC_MISS_PARAM_NAME           = '缺少要指向的参数名称。'
PARSER_LUADOC_MISS_PARAM_EXTENDS        = '缺少参数的类型定义。'
PARSER_LUADOC_MISS_FIELD_NAME           = '缺少字段名称。'
PARSER_LUADOC_MISS_FIELD_EXTENDS        = '缺少字段的类型定义。'
PARSER_LUADOC_MISS_GENERIC_NAME         = '缺少泛型名称。'
PARSER_LUADOC_MISS_GENERIC_EXTENDS_NAME = '缺少泛型要继承的类名称。'
PARSER_LUADOC_MISS_VARARG_TYPE          = '缺少不定参的类型定义。'
PARSER_LUADOC_MISS_FUN_AFTER_OVERLOAD   = '缺少关键字 `fun`。'
PARSER_LUADOC_MISS_CATE_NAME            = '缺少文档类型名称。'

SYMBOL_ANONYMOUS        = '<匿名函数>'

HOVER_VIEW_DOCUMENTS    = '查看文档'

HOVER_DOCUMENT_LUA51    = 'http://www.lua.org/manual/5.1/manual.html#{}'
HOVER_DOCUMENT_LUA52    = 'http://www.lua.org/manual/5.2/manual.html#{}'
HOVER_DOCUMENT_LUA53    = 'http://cloudwu.github.io/lua53doc/manual.html#{}'
HOVER_DOCUMENT_LUA54    = 'http://www.lua.org/manual/5.4/manual.html#{}'
HOVER_DOCUMENT_LUAJIT   = 'http://www.lua.org/manual/5.1/manual.html#{}'

HOVER_NATIVE_DOCUMENT_LUA51     = 'command:extension.lua.doc?["en-us/51/manual.html/{}"]'
HOVER_NATIVE_DOCUMENT_LUA52     = 'command:extension.lua.doc?["en-us/52/manual.html/{}"]'
HOVER_NATIVE_DOCUMENT_LUA53     = 'command:extension.lua.doc?["zh-cn/53/manual.html/{}"]'
HOVER_NATIVE_DOCUMENT_LUA54     = 'command:extension.lua.doc?["en-us/54/manual.html/{}"]'
HOVER_NATIVE_DOCUMENT_LUAJIT    = 'command:extension.lua.doc?["en-us/51/manual.html/{}"]'

HOVER_MULTI_PROTOTYPE      = '({} 个原型)'
HOVER_STRING_BYTES         = '{} 个字节'
HOVER_STRING_CHARACTERS    = '{} 个字节，{} 个字符'
HOVER_MULTI_DEF_PROTO      = '({} 个定义，{} 个原型)'
HOVER_MULTI_PROTO_NOT_FUNC = '({} 个非函数定义)'

HOVER_USE_LUA_PATH      = '（假设搜索路径包含 `{}`）'
HOVER_EXTENDS           = '展开为 {}'
HOVER_TABLE_TIME_UP     = '出于性能考虑，已禁用了部分类型推断。'

ACTION_DISABLE_DIAG     = '禁用诊断({})。'
ACTION_MARK_GLOBAL      = '标记 `{}` 为已定义的全局变量。'
ACTION_REMOVE_SPACE     = '清除所有后置空格。'
ACTION_ADD_SEMICOLON    = '添加 `;` 。'
ACTION_ADD_BRACKETS     = '添加括号。'
ACTION_RUNTIME_VERSION  = '修改运行版本为 {} 。'
ACTION_OPEN_LIBRARY     = '加载 {} 中的全局变量。'
ACTION_ADD_DO_END       = '添加 `do ... end` 。'
ACTION_FIX_LCOMMENT_END = '改用正确的多行注释关闭符号。'
ACTION_ADD_LCOMMENT_END = '关闭多行注释。'
ACTION_FIX_C_LONG_COMMENT = '修改为 Lua 的多行注释格式。'
ACTION_FIX_LSTRING_END  = '改用正确的长字符串关闭符号。'
ACTION_ADD_LSTRING_END  = '关闭长字符串。'
ACTION_FIX_ASSIGN_AS_EQ = '改为 `=` 。'
ACTION_FIX_EQ_AS_ASSIGN = '改为 `==` 。'
ACTION_FIX_UEQ          = '改为 `~=` 。'
ACTION_FIX_THEN_AS_DO   = '改为 `then` 。'
ACTION_FIX_DO_AS_THEN   = '改为 `do` 。'
ACTION_ADD_END          = '添加 `end` （根据缩进推测添加位置）。'
ACTION_FIX_COMMENT_PREFIX = '改为 `--` 。'
ACTION_RUNTIME_UNICODE_NAME = '允许使用 Unicode 字符。'
ACTION_SWAP_PARAMS      = '将其改为 `{node}` 的第 {index} 个参数'

COMMAND_DISABLE_DIAG    = '禁用诊断'
COMMAND_MARK_GLOBAL     = '标记全局变量'
COMMAND_REMOVE_SPACE    = '清除所有后置空格'
COMMAND_ADD_BRACKETS    = '添加括号'
COMMAND_RUNTIME_VERSION = '修改运行版本'
COMMAND_OPEN_LIBRARY    = '加载第三方库中的全局变量'
COMMAND_UNICODE_NAME    = '允许使用 Unicode 字符'

COMPLETION_IMPORT_FROM  = '从 {} 中导入'

DEBUG_MEMORY_LEAK       = '{} 很抱歉发生了严重的内存泄漏，语言服务即将重启。'
DEBUG_RESTART_NOW       = '立即重启'
